<!DOCTYPE html>
<html class="writer-html5" lang="en" data-content_root="./">
<head>
  <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Intersection &mdash; rhino3dm 8.6.0-beta1 documentation</title>
      <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=80d5e7a1" />
      <link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=19f00094" />

  
  <!--[if lt IE 9]>
    <script src="_static/js/html5shiv.min.js"></script>
  <![endif]-->
  
        <script src="_static/jquery.js?v=5d32c60e"></script>
        <script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
        <script src="_static/documentation_options.js?v=d31f2110"></script>
        <script src="_static/doctools.js?v=888ff710"></script>
        <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
    <script src="_static/js/theme.js"></script>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Interval" href="Interval.html" />
    <link rel="prev" title="InstanceReference" href="InstanceReference.html" /> 
</head>

<body class="wy-body-for-nav"> 
  <div class="wy-grid-for-nav">
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >

          
          
          <a href="index.html" class="icon icon-home">
            rhino3dm
          </a>
              <div class="version">
                8.6.0-beta1
              </div>
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>
        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
              <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="AnnotationBase.html">AnnotationBase</a></li>
<li class="toctree-l1"><a class="reference internal" href="Arc.html">Arc</a></li>
<li class="toctree-l1"><a class="reference internal" href="ArcCurve.html">ArcCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="ArchivableDictionary.html">ArchivableDictionary</a></li>
<li class="toctree-l1"><a class="reference internal" href="BezierCurve.html">BezierCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Bitmap.html">Bitmap</a></li>
<li class="toctree-l1"><a class="reference internal" href="BoundingBox.html">BoundingBox</a></li>
<li class="toctree-l1"><a class="reference internal" href="Box.html">Box</a></li>
<li class="toctree-l1"><a class="reference internal" href="Brep.html">Brep</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepEdge.html">BrepEdge</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepEdgeList.html">BrepEdgeList</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepFace.html">BrepFace</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepFaceList.html">BrepFaceList</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepSurfaceList.html">BrepSurfaceList</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepVertex.html">BrepVertex</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepVertexList.html">BrepVertexList</a></li>
<li class="toctree-l1"><a class="reference internal" href="Circle.html">Circle</a></li>
<li class="toctree-l1"><a class="reference internal" href="CommonObject.html">CommonObject</a></li>
<li class="toctree-l1"><a class="reference internal" href="ComponentIndex.html">ComponentIndex</a></li>
<li class="toctree-l1"><a class="reference internal" href="Cone.html">Cone</a></li>
<li class="toctree-l1"><a class="reference internal" href="ConstructionPlane.html">ConstructionPlane</a></li>
<li class="toctree-l1"><a class="reference internal" href="Curve.html">Curve</a></li>
<li class="toctree-l1"><a class="reference internal" href="CurvePiping.html">CurvePiping</a></li>
<li class="toctree-l1"><a class="reference internal" href="CurveProxy.html">CurveProxy</a></li>
<li class="toctree-l1"><a class="reference internal" href="Cylinder.html">Cylinder</a></li>
<li class="toctree-l1"><a class="reference internal" href="Decal.html">Decal</a></li>
<li class="toctree-l1"><a class="reference internal" href="DimensionStyle.html">DimensionStyle</a></li>
<li class="toctree-l1"><a class="reference internal" href="Displacement.html">Displacement</a></li>
<li class="toctree-l1"><a class="reference internal" href="Dithering.html">Dithering</a></li>
<li class="toctree-l1"><a class="reference internal" href="DracoCompression.html">DracoCompression</a></li>
<li class="toctree-l1"><a class="reference internal" href="DracoCompressionOptions.html">DracoCompressionOptions</a></li>
<li class="toctree-l1"><a class="reference internal" href="EarthAnchorPoint.html">EarthAnchorPoint</a></li>
<li class="toctree-l1"><a class="reference internal" href="EdgeSoftening.html">EdgeSoftening</a></li>
<li class="toctree-l1"><a class="reference internal" href="Ellipse.html">Ellipse</a></li>
<li class="toctree-l1"><a class="reference internal" href="EmbeddedFile.html">EmbeddedFile</a></li>
<li class="toctree-l1"><a class="reference internal" href="Environment.html">Environment</a></li>
<li class="toctree-l1"><a class="reference internal" href="Extrusion.html">Extrusion</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dm.html">File3dm</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmBitmapTable.html">File3dmBitmapTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmDecalTable.html">File3dmDecalTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmDimStyleTable.html">File3dmDimStyleTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmEmbeddedFileTable.html">File3dmEmbeddedFileTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmGroupTable.html">File3dmGroupTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmInstanceDefinitionTable.html">File3dmInstanceDefinitionTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmLayerTable.html">File3dmLayerTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmLinetypeTable.html">File3dmLinetypeTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmMaterialTable.html">File3dmMaterialTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmMeshModifiers.html">File3dmMeshModifiers</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmObject.html">File3dmObject</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmObjectTable.html">File3dmObjectTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmPlugInData.html">File3dmPlugInData</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmPlugInDataTable.html">File3dmPlugInDataTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmPostEffectTable.html">File3dmPostEffectTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmRdkDocumentData.html">File3dmRdkDocumentData</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmRenderContentTable.html">File3dmRenderContentTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmSettings.html">File3dmSettings</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmShutLiningCurveTable.html">File3dmShutLiningCurveTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmStringTable.html">File3dmStringTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmViewTable.html">File3dmViewTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmWriteOptions.html">File3dmWriteOptions</a></li>
<li class="toctree-l1"><a class="reference internal" href="FileReference.html">FileReference</a></li>
<li class="toctree-l1"><a class="reference internal" href="Font.html">Font</a></li>
<li class="toctree-l1"><a class="reference internal" href="GeometryBase.html">GeometryBase</a></li>
<li class="toctree-l1"><a class="reference internal" href="GroundPlane.html">GroundPlane</a></li>
<li class="toctree-l1"><a class="reference internal" href="Group.html">Group</a></li>
<li class="toctree-l1"><a class="reference internal" href="Hatch.html">Hatch</a></li>
<li class="toctree-l1"><a class="reference internal" href="InstanceDefinition.html">InstanceDefinition</a></li>
<li class="toctree-l1"><a class="reference internal" href="InstanceReference.html">InstanceReference</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Intersection</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#rhino3dm.Intersection"><code class="docutils literal notranslate"><span class="pre">Intersection</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.LineLine"><code class="docutils literal notranslate"><span class="pre">Intersection.LineLine()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#id0"><code class="docutils literal notranslate"><span class="pre">Intersection.LineLine()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.LinePlane"><code class="docutils literal notranslate"><span class="pre">Intersection.LinePlane()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.PlanePlane"><code class="docutils literal notranslate"><span class="pre">Intersection.PlanePlane()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.PlanePlanePlane"><code class="docutils literal notranslate"><span class="pre">Intersection.PlanePlanePlane()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.PlaneSphere"><code class="docutils literal notranslate"><span class="pre">Intersection.PlaneSphere()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.LineCircle"><code class="docutils literal notranslate"><span class="pre">Intersection.LineCircle()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.LineSphere"><code class="docutils literal notranslate"><span class="pre">Intersection.LineSphere()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.LineCylinder"><code class="docutils literal notranslate"><span class="pre">Intersection.LineCylinder()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.SphereSphere"><code class="docutils literal notranslate"><span class="pre">Intersection.SphereSphere()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Intersection.LineBox"><code class="docutils literal notranslate"><span class="pre">Intersection.LineBox()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="Interval.html">Interval</a></li>
<li class="toctree-l1"><a class="reference internal" href="Layer.html">Layer</a></li>
<li class="toctree-l1"><a class="reference internal" href="Light.html">Light</a></li>
<li class="toctree-l1"><a class="reference internal" href="Line.html">Line</a></li>
<li class="toctree-l1"><a class="reference internal" href="LinearWorkflow.html">LinearWorkflow</a></li>
<li class="toctree-l1"><a class="reference internal" href="LineCurve.html">LineCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Linetype.html">Linetype</a></li>
<li class="toctree-l1"><a class="reference internal" href="Material.html">Material</a></li>
<li class="toctree-l1"><a class="reference internal" href="Mesh.html">Mesh</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshFaceList.html">MeshFaceList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshingParameters.html">MeshingParameters</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshNormalList.html">MeshNormalList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshTextureCoordinateList.html">MeshTextureCoordinateList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshTopologyEdgeList.html">MeshTopologyEdgeList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshVertexColorList.html">MeshVertexColorList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshVertexList.html">MeshVertexList</a></li>
<li class="toctree-l1"><a class="reference internal" href="ModelComponent.html">ModelComponent</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsCurve.html">NurbsCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsCurveKnotList.html">NurbsCurveKnotList</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsCurvePointList.html">NurbsCurvePointList</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsSurface.html">NurbsSurface</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsSurfaceKnotList.html">NurbsSurfaceKnotList</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsSurfacePointList.html">NurbsSurfacePointList</a></li>
<li class="toctree-l1"><a class="reference internal" href="ObjectAttributes.html">ObjectAttributes</a></li>
<li class="toctree-l1"><a class="reference internal" href="PhysicallyBasedMaterial.html">PhysicallyBasedMaterial</a></li>
<li class="toctree-l1"><a class="reference internal" href="Plane.html">Plane</a></li>
<li class="toctree-l1"><a class="reference internal" href="PlaneSurface.html">PlaneSurface</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point.html">Point</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point2d.html">Point2d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point2f.html">Point2f</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point3d.html">Point3d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point3dList.html">Point3dList</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point3f.html">Point3f</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point4d.html">Point4d</a></li>
<li class="toctree-l1"><a class="reference internal" href="PointCloud.html">PointCloud</a></li>
<li class="toctree-l1"><a class="reference internal" href="PointCloudItem.html">PointCloudItem</a></li>
<li class="toctree-l1"><a class="reference internal" href="PointGrid.html">PointGrid</a></li>
<li class="toctree-l1"><a class="reference internal" href="PolyCurve.html">PolyCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Polyline.html">Polyline</a></li>
<li class="toctree-l1"><a class="reference internal" href="PolylineCurve.html">PolylineCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="PostEffect.html">PostEffect</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderChannels.html">RenderChannels</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderContent.html">RenderContent</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderEnvironment.html">RenderEnvironment</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderEnvironments.html">RenderEnvironments</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderMaterial.html">RenderMaterial</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderSettings.html">RenderSettings</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderTexture.html">RenderTexture</a></li>
<li class="toctree-l1"><a class="reference internal" href="RevSurface.html">RevSurface</a></li>
<li class="toctree-l1"><a class="reference internal" href="SafeFrame.html">SafeFrame</a></li>
<li class="toctree-l1"><a class="reference internal" href="ShutLining.html">ShutLining</a></li>
<li class="toctree-l1"><a class="reference internal" href="ShutLiningCurve.html">ShutLiningCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Skylight.html">Skylight</a></li>
<li class="toctree-l1"><a class="reference internal" href="Sphere.html">Sphere</a></li>
<li class="toctree-l1"><a class="reference internal" href="SubD.html">SubD</a></li>
<li class="toctree-l1"><a class="reference internal" href="Sun.html">Sun</a></li>
<li class="toctree-l1"><a class="reference internal" href="Surface.html">Surface</a></li>
<li class="toctree-l1"><a class="reference internal" href="SurfaceProxy.html">SurfaceProxy</a></li>
<li class="toctree-l1"><a class="reference internal" href="TextDot.html">TextDot</a></li>
<li class="toctree-l1"><a class="reference internal" href="Texture.html">Texture</a></li>
<li class="toctree-l1"><a class="reference internal" href="TextureMapping.html">TextureMapping</a></li>
<li class="toctree-l1"><a class="reference internal" href="Thickening.html">Thickening</a></li>
<li class="toctree-l1"><a class="reference internal" href="Transform.html">Transform</a></li>
<li class="toctree-l1"><a class="reference internal" href="Vector2d.html">Vector2d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Vector3d.html">Vector3d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Vector3f.html">Vector3f</a></li>
<li class="toctree-l1"><a class="reference internal" href="ViewInfo.html">ViewInfo</a></li>
<li class="toctree-l1"><a class="reference internal" href="ViewportInfo.html">ViewportInfo</a></li>
</ul>

        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="index.html">rhino3dm</a>
      </nav>

      <div class="wy-nav-content">
        <div class="rst-content">
          <div role="navigation" aria-label="Page navigation">
  <ul class="wy-breadcrumbs">
      <li><a href="index.html" class="icon icon-home" aria-label="Home"></a></li>
      <li class="breadcrumb-item active">Intersection</li>
      <li class="wy-breadcrumbs-aside">
            <a href="_sources/Intersection.rst.txt" rel="nofollow"> View page source</a>
      </li>
  </ul>
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
             
  <section id="module-rhino3dm">
<span id="intersection"></span><h1>Intersection<a class="headerlink" href="#module-rhino3dm" title="Link to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="rhino3dm.Intersection">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">rhino3dm.</span></span><span class="sig-name descname"><span class="pre">Intersection</span></span><a class="headerlink" href="#rhino3dm.Intersection" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.LineLine">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LineLine</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">lineA</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lineB</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.LineLine" title="Link to this definition"></a></dt>
<dd><p>Intersects two lines.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>lineA</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – First line for intersection.</p></li>
<li><p><strong>lineB</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Second line for intersection.</p></li>
<li><p><strong>tolerance</strong> (<em>float</em>) – If tolerance &gt; 0.0, then an intersection is reported only if the distance between the points is &lt;= tolerance. If tolerance &lt;= 0.0, then the closest point between the lines is reported.</p></li>
<li><p><strong>finiteSegments</strong> (<em>bool</em>) – If true, the input lines are treated as finite segments. If false, the input lines are treated as infinite lines.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, float, float)</p>
<ul class="simple">
<li><p>True if a closest point can be calculated and the result passes the tolerance parameter test; otherwise false.</p></li>
<li><p>Parameter on lineA that is closest to LineB. The shortest distance between the lines is the chord from lineA.PointAt(a) to lineB.PointAt(b) </p></li>
<li><p>Parameter on lineB that is closest to LineA. The shortest distance between the lines is the chord from lineA.PointAt(a) to lineB.PointAt(b) </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, float, float)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="id0">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LineLine</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">lineA</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lineB</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">finiteSegments</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#id0" title="Link to this definition"></a></dt>
<dd><p>Intersects two lines.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>lineA</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – First line for intersection.</p></li>
<li><p><strong>lineB</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Second line for intersection.</p></li>
<li><p><strong>tolerance</strong> (<em>float</em>) – If tolerance &gt; 0.0, then an intersection is reported only if the distance between the points is &lt;= tolerance. If tolerance &lt;= 0.0, then the closest point between the lines is reported.</p></li>
<li><p><strong>finiteSegments</strong> (<em>bool</em>) – If true, the input lines are treated as finite segments. If false, the input lines are treated as infinite lines.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, float, float)</p>
<ul class="simple">
<li><p>True if a closest point can be calculated and the result passes the tolerance parameter test; otherwise false.</p></li>
<li><p>Parameter on lineA that is closest to LineB. The shortest distance between the lines is the chord from lineA.PointAt(a) to lineB.PointAt(b) </p></li>
<li><p>Parameter on lineB that is closest to LineA. The shortest distance between the lines is the chord from lineA.PointAt(a) to lineB.PointAt(b) </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, float, float)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.LinePlane">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LinePlane</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">plane</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.LinePlane" title="Link to this definition"></a></dt>
<dd><p>Intersects a line and a plane. This function only returns True if the
intersection result is a single point (i.e. if the line is coincident with
the plane then no intersection is assumed).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>line</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Line for intersection.</p></li>
<li><p><strong>plane</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – Plane to intersect.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, float)</p>
<ul class="simple">
<li><p>True on success, False on failure.</p></li>
<li><p>Parameter on line where intersection occurs. If the parameter is not within the {0, 1} Interval then the finite segment does not intersect the plane. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, float)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.PlanePlane">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">PlanePlane</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">planeA</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">planeB</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.PlanePlane" title="Link to this definition"></a></dt>
<dd><p>Intersects two planes and return the intersection line. If the planes are
parallel or coincident, no intersection is assumed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>planeA</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – First plane for intersection.</p></li>
<li><p><strong>planeB</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – Second plane for intersection.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, Line)</p>
<ul class="simple">
<li><p>True on success, False on failure.</p></li>
<li><p>If this function returns true, the intersectionLine parameter will return the line where the planes intersect. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, <a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line">Line</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.PlanePlanePlane">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">PlanePlanePlane</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">planeA</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">planeB</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">planeC</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.PlanePlanePlane" title="Link to this definition"></a></dt>
<dd><p>Intersects three planes to find the single point they all share.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>planeA</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – First plane for intersection.</p></li>
<li><p><strong>planeB</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – Second plane for intersection.</p></li>
<li><p><strong>planeC</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – Third plane for intersection.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, rhino3dm.Point3d)</p>
<ul class="simple">
<li><p>True on success, False on failure. If at least two out of the three planes are parallel or coincident, failure is assumed. </p></li>
<li><p>Point where all three planes converge. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.PlaneSphere">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">PlaneSphere</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plane</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sphere</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.PlaneSphere" title="Link to this definition"></a></dt>
<dd><p>Intersects a plane with a sphere using exact calculations.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>plane</strong> (<a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane"><em>rhino3dm.Plane</em></a>) – Plane to intersect.</p></li>
<li><p><strong>sphere</strong> (<a class="reference internal" href="Sphere.html#rhino3dm.Sphere" title="rhino3dm.Sphere"><em>rhino3dm.Sphere</em></a>) – Sphere to intersect.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (PlaneSphereIntersection, Circle)</p>
<ul class="simple">
<li><p>If  is returned, the intersectionCircle has a radius of zero and the center point is the point on the plane closest to the sphere. </p></li>
<li><p>Intersection result. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(PlaneSphereIntersection, <a class="reference internal" href="Circle.html#rhino3dm.Circle" title="rhino3dm.Circle">Circle</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.LineCircle">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LineCircle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">circle</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.LineCircle" title="Link to this definition"></a></dt>
<dd><p>Intersects a line with a circle using exact calculations.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>line</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Line for intersection.</p></li>
<li><p><strong>circle</strong> (<a class="reference internal" href="Circle.html#rhino3dm.Circle" title="rhino3dm.Circle"><em>Circle</em></a>) – Circle for intersection.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (LineCircleIntersection, float, rhino3dm.Point3d, float, rhino3dm.Point3d)</p>
<ul class="simple">
<li><p>If  is returned, only t1 and point1 will have valid values. If  is returned, t2 and point2 will also be filled out. </p></li>
<li><p>Parameter on line for first intersection. </p></li>
<li><p>Point on circle closest to first intersection. </p></li>
<li><p>Parameter on line for second intersection. </p></li>
<li><p>Point on circle closest to second intersection. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(LineCircleIntersection, float, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>, float, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.LineSphere">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LineSphere</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sphere</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.LineSphere" title="Link to this definition"></a></dt>
<dd><p>Intersects a line with a sphere using exact calculations.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>line</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Line for intersection.</p></li>
<li><p><strong>sphere</strong> (<a class="reference internal" href="Sphere.html#rhino3dm.Sphere" title="rhino3dm.Sphere"><em>rhino3dm.Sphere</em></a>) – Sphere for intersection.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (LineSphereIntersection, rhino3dm.Point3d, rhino3dm.Point3d)</p>
<ul class="simple">
<li><p>If  is returned, the first point is the point on the line closest to the sphere and the second point is the point on the sphere closest to the line. If  is returned, the first point is the point on the line and the second point is the same point on the sphere. </p></li>
<li><p>First intersection point. </p></li>
<li><p>Second intersection point. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(LineSphereIntersection, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.LineCylinder">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LineCylinder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cylinder</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.LineCylinder" title="Link to this definition"></a></dt>
<dd><p>Intersects a line with a cylinder using exact calculations.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>line</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Line for intersection.</p></li>
<li><p><strong>cylinder</strong> (<a class="reference internal" href="Cylinder.html#rhino3dm.Cylinder" title="rhino3dm.Cylinder"><em>Cylinder</em></a>) – Cylinder for intersection.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (LineCylinderIntersection, rhino3dm.Point3d, rhino3dm.Point3d)</p>
<ul class="simple">
<li><p>If None is returned, the first point is the point on the line closest to the cylinder and the second point is the point on the cylinder closest to the line. If  is returned, the first point is the point on the line and the second point is the  same point on the cylinder. </p></li>
<li><p>First intersection point. </p></li>
<li><p>Second intersection point. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(LineCylinderIntersection, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>, <a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.SphereSphere">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">SphereSphere</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sphereA</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sphereB</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.SphereSphere" title="Link to this definition"></a></dt>
<dd><p>Intersects two spheres using exact calculations.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>sphereA</strong> (<a class="reference internal" href="Sphere.html#rhino3dm.Sphere" title="rhino3dm.Sphere"><em>rhino3dm.Sphere</em></a>) – First sphere to intersect.</p></li>
<li><p><strong>sphereB</strong> (<a class="reference internal" href="Sphere.html#rhino3dm.Sphere" title="rhino3dm.Sphere"><em>rhino3dm.Sphere</em></a>) – Second sphere to intersect.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (SphereSphereIntersection, Circle)</p>
<ul class="simple">
<li><p>The intersection type.</p></li>
<li><p>If intersection is a point, then that point will be the center, radius 0. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(SphereSphereIntersection, <a class="reference internal" href="Circle.html#rhino3dm.Circle" title="rhino3dm.Circle">Circle</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Intersection.LineBox">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">LineBox</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">box</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Intersection.LineBox" title="Link to this definition"></a></dt>
<dd><p>Intersects an infinite line and an axis aligned bounding box.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>box</strong> (<a class="reference internal" href="BoundingBox.html#rhino3dm.BoundingBox" title="rhino3dm.BoundingBox"><em>rhino3dm.BoundingBox</em></a>) – BoundingBox to intersect.</p></li>
<li><p><strong>line</strong> (<a class="reference internal" href="Line.html#rhino3dm.Line" title="rhino3dm.Line"><em>Line</em></a>) – Line for intersection.</p></li>
<li><p><strong>tolerance</strong> (<em>float</em>) – If tolerance &gt; 0.0, then the intersection is performed against a box that has each side moved out by tolerance.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, rhino3dm.Interval)</p>
<ul class="simple">
<li><p>True if the line intersects the box, False if no intersection occurs.</p></li>
<li><p>The chord from line.PointAt(lineParameters.T0) to line.PointAt(lineParameters.T1) is the intersection. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, <a class="reference internal" href="Interval.html#rhino3dm.Interval" title="rhino3dm.Interval">rhino3dm.Interval</a>)</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>


           </div>
          </div>
          <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
        <a href="InstanceReference.html" class="btn btn-neutral float-left" title="InstanceReference" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
        <a href="Interval.html" class="btn btn-neutral float-right" title="Interval" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
    </div>

  <hr/>

  <div role="contentinfo">
    <p>&#169; Copyright 2019, Robert McNeel &amp; Associates.</p>
  </div>

  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
    provided by <a href="https://readthedocs.org">Read the Docs</a>.
   

</footer>
        </div>
      </div>
    </section>
  </div>
  <script>
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script> 

</body>
</html>